///**
// * Copyright (C), 2001-2023, www.bosssof.com.cn
// * FileName: UserDTO
// * Author: Administrator
// * Date: 2023-03-30 16:00:38
// * Description:
// * <p>
// * History:
// * <author> Administrator
// * <time> 2023-03-30 16:00:38
// * <version> 1.0.0
// * <desc> 版本描述
// */
package com.bosssoft.g1.common.data.vo;
//import com.fasterxml.jackson.databind.annotation.JsonSerialize;
//import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
//import io.swagger.annotations.ApiModel;
//import io.swagger.annotations.ApiModelProperty;
//import lombok.AllArgsConstructor;
//import lombok.Data;
//import lombok.EqualsAndHashCode;
//import lombok.NoArgsConstructor;
//import lombok.extern.slf4j.Slf4j;
//
//import javax.validation.constraints.NotBlank;
//import java.util.Date;
//
///**
// * @ClassName: UserVO
// * @Description: 类的主要功能描述
// * @Author: Administrator
// * @Date: 2023-03-30 16:00
// **/
//@ApiModel("增加和修改使用的用户对象")
//@Slf4j
//@Data
//@AllArgsConstructor
//@NoArgsConstructor
//@EqualsAndHashCode
//public class UserVO extends BaseVO {
//    /**
//     *  id 雪花算法生成对应行的记录id
//     */
//    @ApiModelProperty("记录id")
//    @JsonSerialize(using= ToStringSerializer.class)
//    private Long id;
//    /**
//     *  姓名
//     */
//    @ApiModelProperty("姓名")
//    @NotBlank(message = "姓名不能为空")
//    private String name;
//
//    /**
//     *  生日
//     */
//    @ApiModelProperty("生日")
//    private Date birthday;
//
//}
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @ClassName: UserVO
 * @Description: 类的主要功能描述
 * @Author: Administrator
 * @Date: 2023-04-18 18:46
 **/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserVO {
    /**
     * 名字
     */
    private String name;
    /**
     * 电话号码
     */
    private String tel;
    /**
     * 主键雪花算法生成
     */
    private Long id;
    /**
     * 消息和错误码 这个设计不号，返回保卫已经被统一应答包装 CommonResponse的Head包含了 code和message 这里不需要了
     */
    private String msg;
    private int code;

    private Long tenantId;
    private String companyAddress;
    private Long orgId;
    private Long companyId;
    public ResponseData data;
    private List<Long> roleIds;

    @Data
    class ResponseData {
        /**
         * 生成的token ，token在认证服务生成比较合理
         */
        private String token;
        /**
         *  一个用户可以拥有多个角色这里是id
         */
        private List<String> roles;
        /**
         *  名字
         */
        private String name;
        /**
         * 头像地址
         */
        private String avatar;
        /**
         *  用户所拥有的资源，如果在 Role对象中包含这个会更好
         */
//        private List<ResourceVO> resourceVO;
    }
}
